--1，参数列表
--1.1 优惠券id
local voucherId = ARGV[1]
--1.2 用户id
local userId = ARGV[2]

--2.数据key
--2.1 库存key
local stockKey = "seckill:stock:" .. voucherId
--2.2 订单key
local orderKey = "seckill:order:" .. voucherId

--3 执行lua脚本 判断库存
if(tonumber(redis.call('get',stockKey))<= 0) then
    --没库存了  返回1
    return 1
end

--4 判断用户是否下过单  sismember
if(redis.call('sismember',orderKey,userId)==1) then
    --存在 说明下过单  返回2
    return 2
end
--5 扣库存
redis.call('incrby',stockKey,-1)
--6 保存用户到redis中set集合
redis.call('sadd',orderKey,userId)
return 0